﻿#include "cardpanel.h"

#include <QMouseEvent>
#include <QPainter>

CardPanel::CardPanel(QWidget* parent) : QWidget(parent) {}

void CardPanel::setImage(const QPixmap& front, const QPixmap& back) {
	m_front = front;
	m_back = back;
	setFixedSize(m_front.size());
	update();
}

QPixmap CardPanel::getImage() { return m_front; }

void CardPanel::setFrontSide(bool flag) { m_isfront = flag; }

bool CardPanel::isFrontSide() { return m_isfront; }

void CardPanel::setSeclected(bool flag) { m_isSelect = flag; }

bool CardPanel::isSelected() { return m_isSelect; }

void CardPanel::setCard(const Card& card) { m_card = card; }

Card CardPanel::getCard() { return m_card; }

void CardPanel::setOwner(Player* player) { m_owner = player; }

Player* CardPanel::getOwner() { return m_owner; }

void CardPanel::clicked() { emit cardSelected(Qt::LeftButton); }

void CardPanel::paintEvent(QPaintEvent* event) {
	Q_UNUSED(event)
		QPainter p(this);
	if (m_isfront) {
		p.drawPixmap(rect(), m_front);
	}
	else {
		p.drawPixmap(rect(), m_back);
	}
}

void CardPanel::mousePressEvent(QMouseEvent* event) {
	emit cardSelected(event->button());
}
